import { Rule, RuleType } from '@midwayjs/validate'

export class pageDto {
  /**
   * 当前第几页，从1开始。
   */
  @Rule(RuleType.number().required().min(1))
  readonly pageNo: number

  /**
   * 每页多少条数据
   */
  @Rule(RuleType.number().required().min(1))
  readonly pageSize: number
}

export class saveLogReq {
  @Rule(RuleType.number().allow(null))
  readonly id: number

  /**
   * 日期
   */
  @Rule(RuleType.string().required())
  readonly day: string

  /**
   * 日志类型
   */
  @Rule(RuleType.number().required())
  readonly type: number

  /**
   * 日志内容
   */
  @Rule(RuleType.string().required())
  readonly content: string
}

export class getLogByDayReq {
  /**
   * 日期
   */
  @Rule(RuleType.string().required())
  readonly day: string

  /**
   * 日志类型
   */
  @Rule(RuleType.number().required())
  readonly type: number
}

export class getLogListDto extends pageDto {
  // 日期
  @Rule(RuleType.string())
  readonly startDate: string

  // 日期
  @Rule(RuleType.string())
  readonly endDate: string

  // 类型
  @Rule(RuleType.number())
  readonly type: number
}

export class deleteLogByIdReq {
  @Rule(RuleType.number())
  readonly id: number
}
export class loginReq {
  @Rule(RuleType.string())
  readonly username: string

  @Rule(RuleType.string())
  readonly password: string
}
